package com.woniuxy.dao;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;

import com.woniuxy.entity.Order;

@Mapper
public interface OrderDao {
	/**
	 * 增加一条新的订单信息
	 * 
	 * @param order
	 * @return
	 * @author 王敞
	 */
	public int addOrder(Order order);

	/**
	 * 通过教练id分页查询订单消息
	 * 
	 * @param cid
	 * @return
	 * @author 王敞
	 */
	public List<Order> findOrdersByCid(int index,int pageSize,int uid);
	
	/**
	 * 计算教练订单的总数量
	 * @param uid
	 * @return
	 * @author 王敞
	 */
	public int findTotalNumsOfOrdersByCid(int cid);
	
	/**
	 * 通过学员id查询分页查询订单消息
	 * 
	 * @param cid
	 * @return
	 * @author 王敞
	 */
	public List<Order> findOrdersByUid(int index,int pageSize,int uid);
	/**
	 * 计算学员订单的总数量
	 * @param uid
	 * @return
	 * @author 王敞
	 */
	public int findTotalNumsOfOrdersByUid(int uid);

	/**
	 * 通过订单id获取订单信息
	 * 
	 * @param oid
	 * @return
	 * @author 王敞
	 */
	public Order findOrderByOid(int oid);
	
	/**
	 * 通过订单id修改订单状态
	 * @param ostatus
	 * @param oid
	 * @return
	 * @author 王敞
	 */
	public int updateOrderOstatus(String ostatus,int oid);
	
	/**
	 * 通过订单编码获取订单
	 * @param orderNumber
	 * @return
	 * @author 王敞
	 */
	public Order findOrderByorderNumber(String orderNumber);
	/**
	 * 增加订单评价和评价内容
	 * @param order
	 * @return
	 * @author 王敞
	 */
	public int addRemarkByOid(Order order);

	/**
	 * 通过学员id查询该学员所有订单总数
	 * @param uid
	 * @return
	 */
	public int findOrderCountByUid(int uid);

	/**
	 * 查询好评数
	 * @param uid
	 * @return
	 */
	public int findNiceOrderCountByUid(int uid);
	
	/**
	 * 查询中评数
	 * @param uid
	 * @return
	 */
	public int findComOrderCountByUid(int uid);
	
	/**
	 * 查询差评数
	 * @param uid
	 * @return
	 */
	public int findBadOrderCountByUid(int uid);
}
